package main

import (
	"fmt"
	"time"
)

/**
  channel 同一时刻只有一个协程可以访问数据
*/
func main() {

	//ch:=make(chan int)
	//go func() {
	//	fmt.Println("go chan")
	//	time.Sleep(time.Second*5)
	//	ch <-10 //写到channel
	//}()
	// i:=<- ch   //从channel中读取 ，读不到会阻塞
	// fmt.Println(i)

	ch := make(chan int, 2)
	defer close(ch)

	//go func() {
	//	ch<-10
	//	fmt.Println(1)
	//}()

	ret, ok := <-ch
	fmt.Println(ret, ok)
	fmt.Println(2)
	i := <-ch

	fmt.Println(i)
	time.Sleep(time.Second * 10)
}
